package com.hjl.controller;

import com.hjl.pojo.User;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * @author ServivE
 * @version 0.1
 * @className UserController
 * @description
 * @date 2024/8/13 14:37
 * @since jdk17
 */
@RequestMapping("user")
@RestController
public class UserController {

    /**
     * 模拟分页查询业务接口
     */
    //请求方式  get
    //请求参数  param参数
    //响应 json
    @GetMapping
    public List<User> find(@RequestParam(required = false, defaultValue = "1") int page,
                           @RequestParam(required = false, defaultValue = "10") int size) {
        return null;
    }

    /**
     * 模拟用户保存业务接口
     */
    //请求方式  post
    //请求参数  json
    //响应 json
    @PostMapping
    public Object addUser(@RequestBody User user) {
        return "ok";
    }

    /**
     * 模拟用户详情业务接口
     */
    //请求方式  get
    //请求参数  路径参数
    //响应 json
    @GetMapping("{id}")
    public User detail(@PathVariable int id) {
        return null;
    }

    /**
     * 模拟用户更新业务接口
     */
    //请求方式  put
    //请求参数  json
    //响应 json
    @PutMapping
    public Object update(@RequestBody User user) {
        return "ok";
    }

    /**
     * 模拟条件分页查询业务接口
     */
    //请求方式  get
    //请求参数  param参数
    //响应 json
    @GetMapping("search")
    public List<User> search(String keywork, @RequestParam(name = "page", required = false, defaultValue = "1") int page,
                             @RequestParam(name = "size", required = false, defaultValue = "10") int size) {
        return null;
    }

    /**
     * 模拟用户删除业务接口
     */
    //请求方式  delete
    //请求参数  路径参数
    //响应 json
    @DeleteMapping("{id}")
    public String deleteUser(@PathVariable int id) {
        return "ok";
    }

}
